Shooting range #2-3

; port1
; 3f939 = ID
; 3f93a = button1
; 3f93b = button2
; 3f93c = mouse-x
; 3f93d = mouse-y


; port2
; 3f949 = ID
; 3f94a = button1
; 3f94b = button2
; 3f94c = mouse-x
; 3f94d = mouse-y


; aa635 = ID 1
; aa636 = button1
; aa637 = button2
; aa638 = mouse-x
; aa639 = mouse-y

; aa68d = ID 1
; aa68e = button1
; aa68f = button2
; aa690 = mouse-x
; aa691 = mouse-y


; cache joypad data (whole range)
8006f474 : 90820000  LBU     8003f938 (v0), 0000 (8003f938 (a0)) [8003f938]
8006f478 : 00000000  NOP    
8006f47c : 3C01800B  LUI     800b0000 (at), 800b (32779),
8006f480 : 2421A634  ADDIU   800b0000 (at), 800b0000 (at), a634 (42548),
8006f484 : 00230821  ADDU    800aa634 (at), 800aa634 (at), 00000000 (v1),
8006f488 : A0220000  SB      00000000 (v0), 0000 (800aa634 (at)) [800aa634]
8006f48c : 24630001  ADDIU   00000000 (v1), 00000000 (v1), 0001 (1),
8006f490 : 28620006  SLTI    00000000 (v0), 00000001 (v1), 0006 (6),
8006f494 : 1440FFF7  BNE     00000001 (v0), 00000000 (r0), 8006f474,
8006f498 : 24840001  ADDIU   8003f938 (a0), 8003f938 (a0), 0001 (1),
8006f49c : 0C008E58  JAL     80023960, 8006f46c (ra),
8006f4a0 : 34040002  ORI     8003f93e (a0), 00000000 (r0), 0002 (2),
8006f4a4 : 00001821  ADDU    00000020 (v1), 00000000 (r0), 00000000 (r0),
8006f4a8 : 00402021  ADDU    00000002 (a0), 8003f948 (v0), 00000000 (r0),


8006f4ac : 90820000  LBU     8003f948 (v0), 0000 (8003f948 (a0)) [8003f948]
8006f4b0 : 00000000  NOP    
8006f4b4 : 3C01800B  LUI     800aa639 (at), 800b (32779),
8006f4b8 : 2421A68C  ADDIU   800b0000 (at), 800b0000 (at), a68c (42636),
8006f4bc : 00230821  ADDU    800aa68c (at), 800aa68c (at), 00000000 (v1),
8006f4c0 : A0220000  SB      00000000 (v0), 0000 (800aa68c (at)) [800aa68c]

8006f4c4 : 24630001  ADDIU   00000000 (v1), 00000000 (v1), 0001 (1),
8006f4c8 : 28620006  SLTI    00000000 (v0), 00000001 (v1), 0006 (6),
8006f4cc : 1440FFF7  BNE     00000001 (v0), 00000000 (r0), 8006f4ac,
8006f4d0 : 24840001  ADDIU   8003f948 (a0), 8003f948 (a0), 0001 (1),
8006f4d4 : 3C03800B  LUI     00000006 (v1), 800b (32779),
8006f4d8 : 9063A634  LBU     800b0000 (v1), a634 (800b0000 (v1)) [800aa634]
8006f4dc : 340200FF  ORI     00000000 (v0), 00000000 (r0), 00ff (255),
8006f4e0 : 1062004A  BEQ     00000000 (v1), 000000ff (v0), 8006f60c,
8006f4e4 : 34030010  ORI     00000000 (v1), 00000000 (r0), 0010 (16),




; check mouse ID
8006f4e8 : 3C02800B  LUI     000000ff (v0), 800b (32779),
8006f4ec : 9042A635  LBU     800b0000 (v0), a635 (800b0000 (v0)) [800aa635]
8006f4f0 : 00000000  NOP    
8006f4f4 : 304200F0  ANDI    00000012 (v0), 00000012 (v0), 00f0 (240),
8006f4f8 : 14430044  BNE     00000010 (v0), 00000010 (v1), 8006f60c,
8006f4fc : 00000000  NOP    

; MOUSE code
8006f500 : 3C02800B  LUI     00000010 (v0), 800b (32779),
8006f504 : 9042A638  LBU     800b0000 (v0), a638 (800b0000 (v0)) [800aa638]
8006f508 : 00000000  NOP    
8006f50c : 1440000D  BNE     000000ec (v0), 00000000 (r0), 8006f544,
8006f510 : 00000000  NOP    

(..)

; mouse-xy
8006f544 : 3C03800B  LUI     00000010 (v1), 800b (32779),
8006f548 : 8063A638  LB      800b0000 (v1), a638 (800b0000 (v1)) [800aa638]
8006f54c : 3C04800B  LUI     8003f94e (a0), 800b (32779),
8006f550 : 8084A639  LB      800b0000 (a0), a639 (800b0000 (a0)) [800aa639]

8006f554 : 3C02800B  LUI     00000080 (v0), 800b (32779),
8006f558 : 8C42A6E4  LW      800b0000 (v0), a6e4 (800b0000 (v0)) [800aa6e4]
8006f55c : 3C05800B  LUI     00000000 (a1), 800b (32779),
8006f560 : 8CA5A6E8  LW      800b0000 (a1), a6e8 (800b0000 (a1)) [800aa6e8]
8006f564 : AE000000  SW      00000000 (r0), 0000 (800aab68 (s0)) [800aab68]


; update mouse cursor position
8006f568 : 00621821  ADDU    ffffff80 (v1), ffffff80 (v1), fffffdf2 (v0),
8006f56c : 00852021  ADDU    0000007f (a0), 0000007f (a0), 000000fa (a1),
8006f570 : AE030004  SW      fffffd72 (v1), 0004 (800aab68 (s0)) [800aab6c]
8006f574 : AE040008  SW      00000179 (a0), 0008 (800aab68 (s0)) [800aab70]


8006f578 : 3C02800B  LUI     fffffdf2 (v0), 800b (32779),
8006f57c : 9042A637  LBU     800b0000 (v0), a637 (800b0000 (v0)) [800aa637]
8006f580 : 3C01800B  LUI     800aa691 (at), 800b (32779),
8006f584 : AC23A6E4  SW      fffffd72 (v1), a6e4 (800b0000 (at)) [800aa6e4]
8006f588 : 3C01800B  LUI     800b0000 (at), 800b (32779),
8006f58c : AC24A6E8  SW      00000179 (a0), a6e8 (800b0000 (at)) [800aa6e8]
8006f590 : 00021027  NOR     000000fc (v0), 00000000 (r0), 000000fc (v0),
8006f594 : 30420008  ANDI    ffffff03 (v0), ffffff03 (v0), 0008 (8),
8006f598 : 10400002  BEQ     00000000 (v0), 00000000 (r0), 8006f5a4,
8006f59c : 3C028000  LUI     00000000 (v0), 8000 (32768),
8006f5a4 : 3C02800B  LUI     80000000 (v0), 800b (32779),
8006f5a8 : 9042A637  LBU     800b0000 (v0), a637 (800b0000 (v0)) [800aa637]
8006f5ac : 00000000  NOP    
8006f5b0 : 00021027  NOR     000000fc (v0), 00000000 (r0), 000000fc (v0),
8006f5b4 : 30420004  ANDI    ffffff03 (v0), ffffff03 (v0), 0004 (4),
8006f5b8 : 10400005  BEQ     00000000 (v0), 00000000 (r0), 8006f5d0,
8006f5bc : 3C034000  LUI     fffffd72 (v1), 4000 (16384),
8006f5d0 : 3C02800B  LUI     00000000 (v0), 800b (32779),
8006f5d4 : 9042A637  LBU     800b0000 (v0), a637 (800b0000 (v0)) [800aa637]
8006f5d8 : 00000000  NOP    
8006f5dc : 00021027  NOR     000000fc (v0), 00000000 (r0), 000000fc (v0),
8006f5e0 : 30420008  ANDI    ffffff03 (v0), ffffff03 (v0), 0008 (8),
8006f5e4 : 10400005  BEQ     00000000 (v0), 00000000 (r0), 8006f5fc,
8006f5e8 : 3C032000  LUI     40000000 (v1), 2000 (8192),
8006f5fc : 3C03800B  LUI     20000000 (v1), 800b (32779),
8006f600 : 9063A637  LBU     800b0000 (v1), a637 (800b0000 (v1)) [800aa637]
8006f604 : 0801BDCF  J       8006f73c,
8006f608 : 00000000  NOP    




; shoot - joypad #2
8006f1f0 : 9042A635  LBU     800b0000 (v0), a635 (800b0000 (v0)) [800aa635]
8006f1f4 : 00000000  NOP    
8006f1f8 : 304200F0  ANDI    00000041 (v0), 00000041 (v0), 00f0 (240),
8006f1fc : 14430007  BNE     00000040 (v0), 00000040 (v1), 8006f21c,
8006f200 : 00000000  NOP    



800759a4 : 8C42AB6C  LW      800b0000 (v0), ab6c (800b0000 (v0)) [800aab6c]
800759a8 : 3C04800B  LUI     00000179 (a0), 800b (32779),
800759ac : 8C84B03C  LW      800b0000 (a0), b03c (800b0000 (a0)) [800ab03c]
800759b0 : 3C03800B  LUI     00000001 (v1), 800b (32779),
800759b4 : 8C63AB70  LW      800b0000 (v1), ab70 (800b0000 (v1)) [800aab70]
800759b8 : 3C05800B  LUI     000000fa (a1), 800b (32779),


800759bc : 8CA5B040  LW      800b0000 (a1), b040 (800b0000 (a1)) [800ab040]
800759c0 : 00441023  SUBU    fffffd72 (v0), fffffd72 (v0), fffffdf2 (a0),
800759c4 : 00651823  SUBU    00000179 (v1), 00000179 (v1), 000000fa (a1),
800759c8 : 3C01800B  LUI     800b0000 (at), 800b (32779),

; shot cursor (real)
800759cc : AC22B034  SW      ffffff80 (v0), b034 (800b0000 (at)) [800ab034]
800759d0 : 3C01800B  LUI     800b0000 (at), 800b (32779),
800759d4 : AC23B038  SW      0000007f (v1), b038 (800b0000 (at)) [800ab038]






; 1b2200 = x-y cache
80087188 : 3C02800B  LUI     00000000 (v0), 800b (32779),
8008718c : 8C42B034  LW      800b0000 (v0), b034 (800b0000 (v0)) [800ab034]
80087190 : 8E03001C  LW      00000007 (v1), 001c (801b21e4 (s0)) [801b2200]
80087194 : 00021043  SRA     00000000 (v0), 00000000 (v0), 01 (1),
80087198 : 00431021  ADDU    00000000 (v0), 00000000 (v0), 01360000 (v1),
8008719c : AE02001C  SW      01360000 (v0), 001c (801b21e4 (s0)) [801b2200]
800871a0 : 3C02800B  LUI     01360000 (v0), 800b (32779),
800871a4 : 8C42B038  LW      800b0000 (v0), b038 (800b0000 (v0)) [800ab038]
800871a8 : 8E030020  LW      01360000 (v1), 0020 (801b21e4 (s0)) [801b2204]
800871ac : 08021C76  J       800871d8,
800871b0 : 00021043  SRA     00000000 (v0), 00000000 (v0), 01 (1),

800871d8 : 00000000  NOP    
800871dc : 00431021  ADDU    00000000 (v0), 00000000 (v0), 00e60000 (v1),
800871e0 : AE020020  SW      00e60000 (v0), 0020 (801b21e4 (s0)) [801b2204]





80085d58 : 8EA2001C  LW      fffe0000 (v0), 001c (801b21e4 (s5)) [801b2200]
80085d5c : 8C840008  LW      801aa884 (a0), 0008 (801aa884 (a0)) [801aa88c]

---> laser dot draw (force offscreen)
80085d60 : 00431023  SUBU    01360000 (v0), 01360000 (v0), 00018000 (v1),
80085d64 : AC820010  SW      01348000 (v0), 0010 (8019873c (a0)) [8019874c]
80085d68 : 8EA20048  LW      01348000 (v0), 0048 (801b21e4 (s5)) [801b222c]
80085d6c : 00000000  NOP    
80085d70 : 8C4300C4  LW      00018000 (v1), 00c4 (8018be80 (v0)) [8018bf44]
80085d74 : 8C440094  LW      8019873c (a0), 0094 (8018be80 (v0)) [8018bf14]
80085d78 : 8EA20020  LW      8018be80 (v0), 0020 (801b21e4 (s5)) [801b2204]
80085d7c : 00031BC0  SLL     00000007 (v1), 00000007 (v1), 0f (15),
80085d80 : 8C840008  LW      801aa884 (a0), 0008 (801aa884 (a0)) [801aa88c]

---> laser dot draw (force offscreen)
80085d84 : 00431023  SUBU    00e60000 (v0), 00e60000 (v0), 00038000 (v1),
80085d88 : AC820014  SW      00e28000 (v0), 0014 (8019873c (a0)) [80198750]





80085c48 : 8C630094  LW      8018be80 (v1), 0094 (8018be80 (v1)) [8018bf14]
80085c4c : 00021400  SLL     fffffffb (v0), fffffffb (v0), 10 (16),
80085c50 : 8C630008  LW      801aa884 (v1), 0008 (801aa884 (v1)) [801aa88c]

---> laser dot draw (force offscreen)
80085c54 : 00441021  ADDU    fffb0000 (v0), fffb0000 (v0), 01360000 (a0),
80085c58 : AC620010  SW      01310000 (v0), 0010 (8019873c (v1)) [8019874c]
80085c5c : 8FA20014  LW      01310000 (v0), 0014 (800aa45c (sp)) [800aa470]
80085c60 : 8EA30048  LW      8019873c (v1), 0048 (801b21e4 (s5)) [801b222c]
80085c64 : 8EA40020  LW      01360000 (a0), 0020 (801b21e4 (s5)) [801b2204]
80085c68 : 8C630094  LW      8018be80 (v1), 0094 (8018be80 (v1)) [8018bf14]
80085c6c : 00021400  SLL     fffffffc (v0), fffffffc (v0), 10 (16),
80085c70 : 8C630008  LW      801aa884 (v1), 0008 (801aa884 (v1)) [801aa88c]

---> laser dot draw (force offscreen)
80085c74 : 00441021  ADDU    fffc0000 (v0), fffc0000 (v0), 007c0000 (a0),
80085c78 : 08021763  J       80085d8c,
80085c7c : AC620014  SW      00780000 (v0), 0014 (8019873c (v1)) [80198750]
